package Demo;

public class Demo04 {
    /**
     * 方法重写 有static修饰的方法 不能被重写  私有的方法不能被重写。
     *
     * 方法覆盖（重写）：
     * 		什么时候方法覆盖：当父类中的方法无法满足子类的业务需求，子类有必要对继承过来的方法进行覆盖
     * 		满足什么条件进行方法覆盖：
     * 				1.有继承关系
     * 				2.具有相同的返回值类型、方法名、形式参数列表
     * 				3.访问权限不能更低（子类的修饰符权限不能低于父类的）
     * 				4.抛出异常不能更多（编译时异常不能更多，父类没有抛出异常，子类可以抛出运行时异常。）
     *
     *  私有方法无法覆盖。
     * 	方法覆盖只是针对于“实例方法”，“静态方法覆盖”没有意义。（这是因为方法覆盖通常和多态联合起来）
     * 	总结两句话：
     * 		私有不能覆盖。
     * 		静态不谈覆盖。
     *
     * 关于Object类中的toString（）方法的覆盖：
     * 		toString（）方法存在的作用：将java对象转换成字符串形式
     * 		大多数java类的toString（）方法需要覆盖（重写）
     *
     * 方法重载和方法覆盖的区别：
     * 		方法重载发生在同一类当中
     * 		方法覆盖发生在具有继承关系的父子类之间。
     * 		方法重载是一个类中，方法名相同，参数列表不同
     * 		方法覆盖是具有继承关系的父子类中，子类重写父类中的方法，且方法名。返回值类型。形参列表一致。
     */
}
